package com.sls.web.manager.game.service;

import java.util.List;

import com.sls.web.manager.game.pojo.EnfuInfo;
import com.sls.web.manager.game.querybean.EnfuQuery;
import com.sls.web.manager.page.Pagination;
import com.sls.web.manager.pojo.UserInfoVO;

/**
 * 
 * @description 恩付--service
 * @author Wangxuegang
 * @date 2013-5-4
 */
public interface EnfuService {

	/**
	 * 确认审核
	 * 
	 * @param suppliersId
	 * @param priceRatio
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public boolean confirmAudit(String id, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 分页查询
	 * 
	 * @param enfuQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<EnfuInfo> queryByPage(EnfuQuery enfuQuery,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 单条查询
	 * 
	 * @param id
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public EnfuInfo queryInfoById(String id, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 合作方编号查询
	 * 
	 * @param enfuInfo
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public List<EnfuInfo> queryMerchantid(UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 余额查询
	 * 
	 * @param enfuQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public EnfuInfo queryBalance(EnfuQuery enfuQuery, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 订单状态查询
	 * 
	 * @param enfuQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public EnfuInfo queryOrderStatus(EnfuQuery enfuQuery, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 同步商品详细
	 * 
	 * @param userInfoVO
	 * @throws Exception
	 */
	public void querygoodsDetailSync(UserInfoVO userInfoVO) throws Exception;

	/**
	 * 批量上架
	 * 
	 * @param goodsState
	 * @param userInfoVO
	 * @throws Exception
	 */
	public void batchOnline(String goodsState, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 批量下架
	 * 
	 * @param goodsState
	 * @param userInfoVO
	 * @throws Exception
	 */
	public void batchOffline(String goodsState, UserInfoVO userInfoVO)
			throws Exception;

	/**
	 * 商品批量同步
	 * 
	 * @param userInfoVO
	 * @throws Exception
	 */
	public void queryGoodsSync(UserInfoVO userInfoVO) throws Exception;

	/**
	 * 分页查询--商品详细
	 * 
	 * @param enfuQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<EnfuInfo> queryByPageOfGoodsDetail(EnfuQuery enfuQuery,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 分页查询--商品大区分页展示
	 * 
	 * @param enfuQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<EnfuInfo> queryByPageOfArea(EnfuQuery enfuQuery,
			UserInfoVO userInfoVO) throws Exception;

	/**
	 * 商品小服，分页展示
	 * 
	 * @param enfuQuery
	 * @param userInfoVO
	 * @return
	 * @throws Exception
	 */
	public Pagination<EnfuInfo> queryByPageOfSrv(EnfuQuery enfuQuery,
			UserInfoVO userInfoVO) throws Exception;

}
